]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
extensions-tool: Set up translations for standalone builds
authorFlorian Müllner <fmuellner@gnome.org>
Tue, 3 Dec 2019 02:02:30 +0000 (03:02 +0100)
committerFlorian Müllner <florian.muellner@gmail.com>
Wed, 18 Dec 2019 19:13:24 +0000 (19:13 +0000)
While we can now build gnome-extensions-tool as stand-alone project,
we are currently missing any translations, as those are part of
gnome-shell.

The easiest option for addressing this would be to symlink the toplevel
po directory into the subproject, however that would mean duplicating
the entire gnome-shell message catalogs.

So instead, set up a bare po directory and provide a script to populate
it from the translations in the toplevel po directory.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/877

subprojects/extensions-tool/README.md
subprojects/extensions-tool/generate-translations.sh [new file with mode: 0755]
subprojects/extensions-tool/meson.build
subprojects/extensions-tool/po/.gitignore [new file with mode: 0644]
subprojects/extensions-tool/po/LINGUAS [new symlink]
subprojects/extensions-tool/po/meson.build [new file with mode: 0644]

index 1416abe1dae67ef28a4050d791d1c19476232f58..dc2e2d794379330684f759b37cfa111ef39d63ac 100644 (file)
@@ -6,6 +6,15 @@ create an extension bundle as part of continuous integration).
 
 Bugs should be reported to the GNOME [bug tracking system][bug-tracker].
 
+## Building
+Before the project can be built stand-alone, the po directory has
+to be populated with translations (from gnome-shell).
+
+To do that, simply run the included script:
+```sh
+$ ./generate-translations.sh
+```
+
 ## License
 gnome-extensions-tool is distributed under the terms of the GNU General Public
 License, version 3 or later. See the [COPYING][license] file for details.
diff --git a/subprojects/extensions-tool/generate-translations.sh b/subprojects/extensions-tool/generate-translations.sh
new file mode 100755 (executable)
index 0000000..9f63081
--- /dev/null
@@ -0,0 +1,19 @@
+#!/usr/bin/bash
+
+cd $(dirname $0)
+
+sed -e '/subprojects\/extensions-tool/!d' \
+    -e 's:subprojects/extensions-tool/::' ../../po/POTFILES.in > po/POTFILES.in
+
+for l in $(<po/LINGUAS)
+do
+  cp ../../po/$l.po po/$l.po
+done
+
+builddir=$(mktemp -d -p.)
+
+meson -Dman=False $builddir
+ninja -C $builddir gnome-extensions-tool-pot
+ninja -C $builddir gnome-extensions-tool-update-po
+
+rm -rf $builddir
index 426c901884daa1f8c71946da63d66eafc91bf73b..ca7e67ce22be0d294ecd215ef3005bb029fa8200 100644 (file)
@@ -40,3 +40,7 @@ if get_option('man')
 
   subdir('man')
 endif
+
+if not meson.is_subproject()
+  subdir('po')
+endif
diff --git a/subprojects/extensions-tool/po/.gitignore b/subprojects/extensions-tool/po/.gitignore
new file mode 100644 (file)
index 0000000..3b2228d
--- /dev/null
@@ -0,0 +1,3 @@
+*.po
+*.pot
+POTFILES.in
diff --git a/subprojects/extensions-tool/po/LINGUAS b/subprojects/extensions-tool/po/LINGUAS
new file mode 120000 (symlink)
index 0000000..4fb83a5
--- /dev/null
@@ -0,0 +1 @@
+../../../po/LINGUAS
\ No newline at end of file
diff --git a/subprojects/extensions-tool/po/meson.build b/subprojects/extensions-tool/po/meson.build
new file mode 100644 (file)
index 0000000..5a1b0e2
--- /dev/null
@@ -0,0 +1 @@
+i18n.gettext(package_name, preset: 'glib')